package DAO;
import java.sql.*;
import Fachada.Fachada;
import java.util.Vector;



/**
 *
 * @author GEMA
 */
public class DAOTelefono
{
    private Fachada fachada;

    public DAOTelefono()
    {
        fachada = new Fachada();
    }

    public int guardarTelefono(String telefono, String idCliente)
    {
        String sql_guardar;
        
        sql_guardar = "INSERT INTO TelefonoCliente VALUES" + "('" + telefono + "', '" + idCliente + "')";

        try
        {
            Connection conexion = fachada.ConexionBaseDatos();
            Statement sentencia = conexion.createStatement();
            int numFilas = sentencia.executeUpdate(sql_guardar);
            conexion.close();
            return numFilas;
        }
        catch(SQLException e)
        {
            System.out.println(e);
        }
        catch(Exception e)
        {
            System.out.println(e);
        }
        
        return -1;
    }

    public int eliminarTelefono(String telefono, String idCliente)
    {
        String sql_eliminar;

        sql_eliminar = "DELETE FROM TelefonoCliente " +
                       "WHERE" + " telefono_cliente = " + "'" + telefono + "' AND " + "id_cliente = " + "'" +idCliente + "'";

        try
        {
            Connection conexion = fachada.ConexionBaseDatos();
            Statement sentencia = conexion.createStatement();
            int numFilas = sentencia.executeUpdate(sql_eliminar);
            conexion.close();
            return numFilas;
        }
        catch(SQLException e)
        {
            System.out.println(e);
        }
        catch(Exception e)
        {
            System.out.println(e);
        }

        return -1;
    }

    public int modificarTelefono(String oldTelefono, String newTelefono, String idCliente)
    {
        String sql_modificar;

        sql_modificar = "UPDATE TelefonoCliente " +
                        "SET telefono_cliente = '" + newTelefono + "' " +
                        "WHERE telefono_cliente = '" + oldTelefono + "' AND id_cliente = "+ idCliente + "'";

        try
        {
            Connection conexion = fachada.ConexionBaseDatos();
            Statement sentencia = conexion.createStatement();
            int numFilas = sentencia.executeUpdate(sql_modificar);
            conexion.close();
            return numFilas;
        }
        catch(SQLException e)
        {
            System.out.println(e);
        }
        catch(Exception e)
        {
            System.out.println(e);
        }

        return -1;
    }

    public Vector<String> consultarTelefonos(String idCliente)
    {
        String sql_seleccionar;
        sql_seleccionar = "SELECT telefono_cliente " +
                          "FROM TelefonoCliente " +
                          "WHERE id_cliente = '"+idCliente+"'";

        Vector<String> telefonos = new Vector<String>();

        try{
            Connection conexion= fachada.ConexionBaseDatos();
            Statement sentencia = conexion.createStatement();
            ResultSet tabla = sentencia.executeQuery(sql_seleccionar);

            while(tabla.next())
            {
               telefonos.addElement(tabla.getString(1));
            }
            conexion.close();
            System.out.println("Conexion cerrada");
            return telefonos;
        }
         catch(SQLException e)
         {
             System.out.println(e);
             return null;
         }
         catch(Exception e){
             System.out.println(e);
             return null;
         }
    }

}
